/* 
 * File:   XmlFileReader.h
 * Author: adriano
 *
 * Created on October 3, 2012, 6:21 PM
 */

#ifndef XMLFILEREADER_H
#define	XMLFILEREADER_H

#include "Entities/Source.h"
#include "Entities/ComputacionalDomain.h"
#include "Entities/SembrField.h"
#include "Entities/SimulationSetup.h"
#include "Entities/ProjectSettings.h"
#include <boost/property_tree/ptree.hpp>

class XmlFileReader {
public:
    XmlFileReader();
    XmlFileReader(const XmlFileReader& orig);
    virtual ~XmlFileReader();
    SimulationSetup* GetSetup(const std::string& sourceXmlFile);
    Source* GetSource(boost::property_tree::ptree& treeContent);
    ComputacionalDomain* GetDomain(boost::property_tree::ptree& treeContent);   
    SembrField* getField(boost::property_tree::ptree& treeContent);
    ProjectSettings* getProjectSettings(const std::string& sourceXmlFile);
private:

};

#endif	/* XMLFILEREADER_H */

